
#ifndef FH_MC_HASH_H_
#define FH_MC_HASH_H_

#include <linux/ioctl.h>



#define FH_MC_HASH_DEVICE_NAME                 "fh_hash"
#define FH_MC_HASH_PLAT_DEVICE_NAME	"fh_hash"

#define FH_MC_HASH_MISC_DEVICE_NAME                 "fh_hash"




#define FH_HASH_IOCTL_MAGIC             'h'
#define RESERVERD                   _IO(FH_HASH_IOCTL_MAGIC, 0)
#define FH_HASH_CALC             _IOWR(FH_HASH_IOCTL_MAGIC, 1, __u32)


struct fh_hash_obj_t {
	int irq_no;
	void* regs;
	u32 phys;
	struct clk *clk;
	struct completion	run_complete;
	struct mutex		lock;
};

struct fh_hash_param_t
{
    unsigned char* buffer;
    unsigned char* res;
    unsigned long len;
    unsigned long shalen;
};

#endif /* FH_MC_HASH_H_ */
